package com.jijuxie.message.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.LocalDateTime;

@Data
@TableName("chat_message")
public class ChatMessage {

    @TableId(type = IdType.AUTO)
    private String messageId;

    /**
     * 发送者ID
     */
    private Long fromUserId;

    /**
     * 接收者ID
     */
    private Long toUserId;

    /**
     * 消息内容
     */
    private String content;

    /**
     * 消息类型（normal普通消息 system系统消息 error错误消息 image图片消息）
     */
    private String messageType;

    /**
     * 发送时间
     */
    private LocalDateTime sendTime;

    /**
     * 已读标志（0未读 1已读）
     */
    private String readFlag;

    /**
     * 删除标志（0代表存在 1代表删除）
     */
    private String delFlag;
    
    /**
     * 图片URL
     */
    private String imageUrl;
    
    /**
     * 图片类型
     */
    private String imageType;

    /**
     * 获取发送时间，如果为空则返回当前时间
     */
    public LocalDateTime getSendTime() {
        // 如果时间为空，自动设置为当前时间
        if (this.sendTime == null) {
            this.sendTime = LocalDateTime.now();
        }
        return this.sendTime;
    }
}
